// 用户管理相关的类型声明

// 接口响应数据
export interface ResponseData {
  code: number;
  message: string;
  ok: boolean;
}

// 用户数据
export interface UserData {
  id?: number
  createTime?: string
  updateTime?: string
  username: string
  password?: string
  name: string
  roleName?: string
}

// 分页请求用户列表接口返回值的ts类型
export interface AllUserResponseData extends ResponseData {
  data: {
    records: UserData[]
    total: number
  }
}

// 角色数据
export interface RoleData {
  id: number
  createTime: string
  updateTime: string
  roleName: string
}

// 角色数据列表
export type RoleList = RoleData[]

// 获取所有角色的接口返回的数据
export interface AllRoleResponseData extends ResponseData {
  data: {
    assignRoles: RoleList
    allRolesList: RoleList
  }
}

// 分配角色接口请求数据
export interface SetRoleData {
  roleIdList: number[]
  userId: number
}
